package com.dragon.modules.yuegou.entity.marketing;

import com.baomidou.mybatisplus.annotation.TableName;
import com.dragon.modules.yuegou.enums.marketing.HomeActivityActivityChannel;
import com.dragon.modules.yuegou.enums.marketing.HomeActivityActivityType;
import com.dragon.modules.yuegou.enums.marketing.HomeActivityStatus;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 首页弹框活动表实体类<br>
 * 对应的表为：mkt_home_activity<br>
 * 
 * @author pbuilder generated
 * @date 2019-08-29 09:51:57
 * @company sgy
 * @version 2.0
 */
@TableName("mkt_home_activity")
@ApiModel(description = "首页弹框活动表")
public class HomeActivityEntity {

    /**  */
	protected String id;

    /**  */
	protected String busdId;

    /**  */
	protected String activityName;

    /** [枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY */
	@ApiModelProperty("[枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY")
	protected HomeActivityActivityType activityType;

    /** [枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED */
	@ApiModelProperty("[枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED")
	protected HomeActivityStatus status;

    /** 开始时间 */
	@ApiModelProperty("开始时间")
	protected LocalDateTime startTime;

    /** 结束时间 */
	@ApiModelProperty("结束时间")
	protected LocalDateTime endTime;

    /** 禁用时间 */
	@ApiModelProperty("禁用时间")
	protected LocalDateTime forbidTime;

    /** 创建人ID */
	@ApiModelProperty("创建人ID")
	protected String createdBy;

    /** 创建时间 */
	@ApiModelProperty("创建时间")
	protected LocalDateTime createdTime;

    /** 更新人ID */
	@ApiModelProperty("更新人ID")
	protected String modifiedBy;

    /** 更新时间 */
	@ApiModelProperty("更新时间")
	protected LocalDateTime modifiedTime;

    /**  */
	protected Integer timeInterval;

    /**  */
	protected String img;

    /** 链接地址 */
	@ApiModelProperty("链接地址")
	protected String url;

    /** 商品spuId */
	@ApiModelProperty("商品spuId")
	protected String spuId;

    /** [枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP */
	@ApiModelProperty("[枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP")
	protected HomeActivityActivityChannel activityChannel;

	/**
	 * 构造一个空首页弹框活动表实体对象
	 */
	public HomeActivityEntity(){
		super();
	}

	/**
	 * 依据其它对象的信息构造一个首页弹框活动表实体对象
	 * 
	 * @param other 其它对象
	 */
	public HomeActivityEntity(HomeActivityEntity other){
		super();
     	this.id = other.id;
     	this.busdId = other.busdId;
     	this.activityName = other.activityName;
     	this.activityType = other.activityType;
     	this.status = other.status;
     	this.startTime = other.startTime;
     	this.endTime = other.endTime;
     	this.forbidTime = other.forbidTime;
     	this.createdBy = other.createdBy;
     	this.createdTime = other.createdTime;
     	this.modifiedBy = other.modifiedBy;
     	this.modifiedTime = other.modifiedTime;
     	this.timeInterval = other.timeInterval;
     	this.img = other.img;
     	this.url = other.url;
     	this.spuId = other.spuId;
     	this.activityChannel = other.activityChannel;
	}


	/**
	 * 获取
	 * 
	 * @return id 
	 */
	public String getId() {
		return id;
	}
  	
	/**
	 * 设置
	 * 
	 * @param id 
	 */
	public void setId(String id) {
		this.id = id;
	}

	/**
	 * 获取
	 * 
	 * @return busdId 
	 */
	public String getBusdId() {
		return busdId;
	}
  	
	/**
	 * 设置
	 * 
	 * @param busdId 
	 */
	public void setBusdId(String busdId) {
		this.busdId = busdId;
	}

	/**
	 * 获取
	 * 
	 * @return activityName 
	 */
	public String getActivityName() {
		return activityName;
	}
  	
	/**
	 * 设置
	 * 
	 * @param activityName 
	 */
	public void setActivityName(String activityName) {
		this.activityName = activityName;
	}

	/**
	 * 获取[枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY
	 * 
	 * @return activityType [枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY
	 */
	public HomeActivityActivityType getActivityType() {
		return activityType;
	}
  	
	/**
	 * 设置[枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY
	 * 
	 * @param activityType [枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY
	 */
	public void setActivityType(HomeActivityActivityType activityType) {
		this.activityType = activityType;
	}

	/**
	 * 获取[枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED
	 * 
	 * @return status [枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED
	 */
	public HomeActivityStatus getStatus() {
		return status;
	}
  	
	/**
	 * 设置[枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED
	 * 
	 * @param status [枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED
	 */
	public void setStatus(HomeActivityStatus status) {
		this.status = status;
	}

	/**
	 * 获取开始时间
	 * 
	 * @return startTime 开始时间
	 */
	public LocalDateTime getStartTime() {
		return startTime;
	}
  	
	/**
	 * 设置开始时间
	 * 
	 * @param startTime 开始时间
	 */
	public void setStartTime(LocalDateTime startTime) {
		this.startTime = startTime;
	}

	/**
	 * 获取结束时间
	 * 
	 * @return endTime 结束时间
	 */
	public LocalDateTime getEndTime() {
		return endTime;
	}
  	
	/**
	 * 设置结束时间
	 * 
	 * @param endTime 结束时间
	 */
	public void setEndTime(LocalDateTime endTime) {
		this.endTime = endTime;
	}

	/**
	 * 获取禁用时间
	 * 
	 * @return forbidTime 禁用时间
	 */
	public LocalDateTime getForbidTime() {
		return forbidTime;
	}
  	
	/**
	 * 设置禁用时间
	 * 
	 * @param forbidTime 禁用时间
	 */
	public void setForbidTime(LocalDateTime forbidTime) {
		this.forbidTime = forbidTime;
	}

	/**
	 * 获取创建人ID
	 * 
	 * @return createdBy 创建人ID
	 */
	public String getCreatedBy() {
		return createdBy;
	}
  	
	/**
	 * 设置创建人ID
	 * 
	 * @param createdBy 创建人ID
	 */
	public void setCreatedBy(String createdBy) {
		this.createdBy = createdBy;
	}

	/**
	 * 获取创建时间
	 * 
	 * @return createdTime 创建时间
	 */
	public LocalDateTime getCreatedTime() {
		return createdTime;
	}
  	
	/**
	 * 设置创建时间
	 * 
	 * @param createdTime 创建时间
	 */
	public void setCreatedTime(LocalDateTime createdTime) {
		this.createdTime = createdTime;
	}

	/**
	 * 获取更新人ID
	 * 
	 * @return modifiedBy 更新人ID
	 */
	public String getModifiedBy() {
		return modifiedBy;
	}
  	
	/**
	 * 设置更新人ID
	 * 
	 * @param modifiedBy 更新人ID
	 */
	public void setModifiedBy(String modifiedBy) {
		this.modifiedBy = modifiedBy;
	}

	/**
	 * 获取更新时间
	 * 
	 * @return modifiedTime 更新时间
	 */
	public LocalDateTime getModifiedTime() {
		return modifiedTime;
	}
  	
	/**
	 * 设置更新时间
	 * 
	 * @param modifiedTime 更新时间
	 */
	public void setModifiedTime(LocalDateTime modifiedTime) {
		this.modifiedTime = modifiedTime;
	}

	/**
	 * 获取
	 * 
	 * @return timeInterval 
	 */
	public Integer getTimeInterval() {
		return timeInterval;
	}
  	
	/**
	 * 设置
	 * 
	 * @param timeInterval 
	 */
	public void setTimeInterval(Integer timeInterval) {
		this.timeInterval = timeInterval;
	}

	/**
	 * 获取
	 * 
	 * @return img 
	 */
	public String getImg() {
		return img;
	}
  	
	/**
	 * 设置
	 * 
	 * @param img 
	 */
	public void setImg(String img) {
		this.img = img;
	}

	/**
	 * 获取链接地址
	 * 
	 * @return url 链接地址
	 */
	public String getUrl() {
		return url;
	}
  	
	/**
	 * 设置链接地址
	 * 
	 * @param url 链接地址
	 */
	public void setUrl(String url) {
		this.url = url;
	}

	/**
	 * 获取商品spuId
	 * 
	 * @return spuId 商品spuId
	 */
	public String getSpuId() {
		return spuId;
	}
  	
	/**
	 * 设置商品spuId
	 * 
	 * @param spuId 商品spuId
	 */
	public void setSpuId(String spuId) {
		this.spuId = spuId;
	}

	/**
	 * 获取[枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP
	 * 
	 * @return activityChannel [枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP
	 */
	public HomeActivityActivityChannel getActivityChannel() {
		return activityChannel;
	}
  	
	/**
	 * 设置[枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP
	 * 
	 * @param activityChannel [枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP
	 */
	public void setActivityChannel(HomeActivityActivityChannel activityChannel) {
		this.activityChannel = activityChannel;
	}

    public String toString() {
		return new StringBuilder().append("HomeActivityEntity{").
			append("id=").append(id).
			append(",busdId=").append(busdId).
			append(",activityName=").append(activityName).
			append(",activityType=").append(activityType).
			append(",status=").append(status).
			append(",startTime=").append(startTime).
			append(",endTime=").append(endTime).
			append(",forbidTime=").append(forbidTime).
			append(",createdBy=").append(createdBy).
			append(",createdTime=").append(createdTime).
			append(",modifiedBy=").append(modifiedBy).
			append(",modifiedTime=").append(modifiedTime).
			append(",timeInterval=").append(timeInterval).
			append(",img=").append(img).
			append(",url=").append(url).
			append(",spuId=").append(spuId).
			append(",activityChannel=").append(activityChannel).
			append('}').toString();
    }

	/**
	 * 复制对象
	 * 
	 * @return 复制后的新实体对象
	 */
	public HomeActivityEntity copy() {
		return new HomeActivityEntity(this);
	}

    /**  */
	public static final String COL_ID = "id";

    /**  */
	public static final String COL_BUSD_ID = "busd_id";

    /**  */
	public static final String COL_ACTIVITY_NAME = "activity_name";

    /** [枚举]活动类型：0-商品推荐-PRODUCT、1-专题活动-ACTIVITY */
	public static final String COL_ACTIVITY_TYPE = "activity_type";

    /** [枚举]状态：0-待开始-WAITING、1-进行中-DOING、2-禁用-FORBIDDEN、3-已过期-EXPIRED */
	public static final String COL_STATUS = "status";

    /** 开始时间 */
	public static final String COL_START_TIME = "start_time";

    /** 结束时间 */
	public static final String COL_END_TIME = "end_time";

    /** 禁用时间 */
	public static final String COL_FORBID_TIME = "forbid_time";

    /** 创建人ID */
	public static final String COL_CREATED_BY = "created_by";

    /** 创建时间 */
	public static final String COL_CREATED_TIME = "created_time";

    /** 更新人ID */
	public static final String COL_MODIFIED_BY = "modified_by";

    /** 更新时间 */
	public static final String COL_MODIFIED_TIME = "modified_time";

    /**  */
	public static final String COL_TIME_INTERVAL = "time_interval";

    /**  */
	public static final String COL_IMG = "img";

    /** 链接地址 */
	public static final String COL_URL = "url";

    /** 商品spuId */
	public static final String COL_SPU_ID = "spu_id";

    /** [枚举]活动渠道：0-全部-ALL、1-小程序-MINIAPP、2-APP-APP */
	public static final String COL_ACTIVITY_CHANNEL = "activity_channel";
}
